Reducing false alarms in identifying whether a candidate image is from an object class

ABSTRACT

In one aspect, a method to reduce false alarms in identifying whether a candidate image is from an object class includes projecting the candidate image onto an object class subspace and projecting the candidate image onto a non-object class subspace. The method also includes determining whether the candidate image is from the object class using a Bayesian decision function based on the projections on the object class subspace and the non-object class subspace. 
     In another aspect, a method to reduce false alarms in identifying whether a candidate mine image is from a mine class includes projecting the candidate mine image onto a mine subspace and projecting the candidate mine image onto a non-mine subspace. The method also includes determining whether the candidate mine image represents a mine using a Bayesian decision function based on the projections on the mine class subspace and the non-mine class subspace.

BACKGROUND

Traditionally, mine detection techniques using sonar imagery have used image processing and detection methods that often rely on preset segmentation and predetermined feature extraction methods followed by classification methods (e.g., neural networks, Bayesian networks and so forth). These classification methods have the disadvantage of not providing good detection or classification accuracy.

SUMMARY

In one aspect, a method to reduce false alarms in identifying whether a candidate image is from an object class includes projecting the candidate image onto an object class subspace and projecting the candidate image onto a non-object class subspace. The method also includes determining whether the candidate image is from the object class using a Bayesian decision function based on the projections on the object class subspace and the non-object class subspace.

In another aspect, a method to reduce false alarms in identifying whether a candidate mine image is from a mine class includes projecting the candidate mine image onto a mine subspace and projecting the candidate mine image onto a non-mine subspace. The method also includes determining whether the candidate mine image represents a mine using a Bayesian decision function based on the projections on the mine class subspace and the non-mine class subspace.

In a further aspect, an article includes a machine-readable medium that stores executable instructions to reduce false alarms in identifying whether a candidate mine image is from a mine class. The instructions causing a machine to generate a mine subspace using principal component analysis on images of mines, generate a non-mine subspace using principal component analysis on images determined to be false positives of mines, project the candidate mine image onto the mine subspace, project the candidate mine image onto the non-mine subspace and determine whether the candidate mine image represents a mine using a Bayesian decision function based on the projections on the mine class subspace and the non-mine class subspace.

In a still further aspect, an apparatus to reduce false alarms in identifying whether a candidate mine image is from a mine class includes circuitry to project the candidate mine image onto the mine subspace, project the candidate mine image onto the non-mine subspace and determine whether the candidate mine image represents a mine using a Bayesian decision function based on the projections on the mine class subspace and the non-mine class subspace. The apparatus further includes circuitry to remove similar components from the mine class subspace and the non-mine class subspace so that each subspace is disjoint from each other.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example of a mine detection system.

FIG. 2 is a flowchart of an example of a process to identify mines.

FIG. 3 is a representation of determining a distance between a candidate mine image patch associated with a candidate object and its projection onto a mine image subspace.

FIG. 4 is an example of a mine image patch.

FIG. 5 is an example of a representation of the mine image subspace having mine image patches.

FIG. 6 is a flowchart of an example of a process to generate the mine image subspace.

FIG. 7 is a flowchart of an exemplary process to determine if the candidate mine image patch is a mine.

FIG. 8 is a diagram showing probability density curves of an object being a mine and an object not being a mine.

FIG. 9 depicts tables for using different vertices of the mine polygon to determine if the candidate object is a mine.

FIG. 10 is a flowchart of an exemplary process to determine if the candidate mine image patch is a mine.

FIG. 11 is a flowchart of an exemplary process to determine probability models.

FIG. 12 is a block diagram of an example of an identification processing system used in mine identification.

DETAILED DESCRIPTION

In contrast to prior art techniques, described herein is an approach to identifying mines; however, this approach may be applied to identifying objects other than mines.

Referring to FIG. 1, a mine identification system 10 includes an identification processing system (IPS) 12 and a sonar sensor system 14 connected to the IPS by a network 16. The sonar sensor system 14 sends sonar signals 17 that are reflected off an object such as a mine 18. The sonar sensor system 14 detects the object based on the reflected signals 19 received from the object. The IPS 12 determines if the detected object is a mine.

In one example, the sonar sensor system 14 may include one or more sonar sensors, such as sonar buoys. In another example, the sonar sensor system 14 is a sonar sensor located aboard a submarine. In one example, the network 16 is a wireless network.

The IPS 12 may be located on a ground-based platform (e.g., in a building, in a vehicle and so forth), a space-based platform (e.g., a satellite, a space-vehicle and so forth), a sea-based platform (e.g., a ship, a submarine, a buoy, an anchored sea structure, a torpedo, an undersea robot vehicle and so forth) or on an air-based platform (e.g., an aircraft, a helicopter, a missile and so forth).

In one example, the IPS 12 may be co-located (i.e., on the same platform) with the sonar sensor system 14. In other examples, the IPS 12 is not co-located with the sonar sensor system 14.

As will be shown below, a received image of a candidate object is converted to a candidate mine image patch which is used to determine whether the candidate object is a mine or not based on a mine image subspace formed from mine image patches of known mines. In particular, a distance, d, is determined between a candidate mine image patch 100 (FIG. 3) and a mine image subspace 96 (FIG. 3). The closer the candidate mine image patch 100 (FIG. 5) is to the mine image subspace 96 (FIG. 3), the greater likelihood that the candidate object is a mine.

Referring to FIG. 2, a process 60 is an example of a process to identify an object and in particular identifying whether an object is a mine. Process 60 generates a mine image subspace (64). The mine subspace is formed using a set of known mines. For example, a set of known mines is used to record their sonar images. Each item in the set of known mines is saved as a mine image patch. The mine image subspace is used instead of the entire real image space because the mine image subspace is much smaller space than the real image space so that using a mine image subspace reduces processing time.

The following is mathematical support that a mine image subspace, in particular an eigen-subspace (based on eigenvalues and eigenvectors), may be used to model mines rather than using an entire space of images. For example, let an image, M(x,y), be a two-dimensional N by N array of intensity values, that is, a vector of dimension N². Mine image patches are treated as squares for the sake of simplicity here, although generally mine images are “shape-normalized” to rectangular grid dimensions of 32 by 128, describing a vector of dimension 4096. Of note is that the shape-normalized images of mines, being similar in overall configuration, will not be randomly distributed in this high dimensional space but instead form a smaller subspace. Principal Components Analysis (PCA) may be used to identify a small number of basis vectors that best capture the distribution of mine images within the larger image space.

Let {M_(i)}_(i=1 . . . T) with M_(i)ε

^(N) ² be a sample set of normalized mine images. The mean mine image from the set is defined by

$\psi = {\frac{1}{T}{\sum\limits_{k}M_{k}}}$ where T is the number of data points. Each mine image deviates from the average by m_(i)=M_(i)−ψ. PCA is applied to the mean subtracted set described by {m_(i)}_(i=1 . . . T) in search for a set of orthonormal basis vectors {u_(i)}_(i=1 . . . T) and associated eigenvalues {λ_(i)}_(i=1 . . . T) that optimally, in a least squares sense, describe the distribution of the random variable m ε

^(N) ² . The basis vectors u_(i) and scalars λ_(i) are eigenvectors and eigenvalues of the covariance matrix described as

$\begin{matrix} {C = {\frac{1}{T}{\sum\limits_{k}{m_{i}m_{i}^{*}}}}} \\ {= {AA}^{*}} \end{matrix}$ where A=[m₁ m₂ m₃ . . . m_(n)]/√{square root over (T)} is a block compositional matrix whose column i corresponds to vector m_(i) and A* is the conjugate transpose of the matrix A. The covariance matrix C is an N²×N² matrix. Note that eigenvector computation for this size matrix is not a computationally feasible task. However, assuming that the number of data points T in the sample space is far less than N², the covariance matrix will have a maximum of T−1 distinct and meaningful eigenvectors.

Now consider the eigenvectors v_(i) of A*A such that A*Av_(i)=μ_(i)v_(i). Pre-multiplying both sides by A results in AA*Av_(i)=μ_(i)Av_(i), from which u_(i)=Av_(i) are the eigenvectors of the original Covariance matrix C=AA*. Thus, an alternative matrix L=A*A may be constructed and the T eigenvectors v_(i) of L may be determined. This transposition analysis reduces the computation from an intractable task to a feasible task. In reality the number of samples is far smaller than the dimension of the image space, so this is a useful step in image-based eigenspace analysis.

For example, if the eigen-subspace is represented as U_(n) where n is the number of dimensions and the total space is represented by

^(n) where m is the number of dimensions, then U_(n) ⊂

^(n) and n<<m. Thus, eigenvectors of L span a basis set which describe the normalized mine images. For example, of this set, picking the top 8 eigenvectors (n=8) associated with the largest 8 eigenvalues forms a lower dimensional subspace U₈ to model the mine image subspace than the total space.

Based on the preceding mathematical support for using a mine image subspace rather than the entire higher dimensional space, the mine image subspace may be constructed using known images of mines.

Referring back to FIG. 2, process 60 receives a sonar image (68). For example, the identification processing system 12 receives a sonar image from the sonar sensor system 14 containing an unidentified object.

Process 60 performs shape-normalization on the received image (72). For example, IPS 12 normalizes the shape of the received image to fit within the boundaries of a mine image patch (see FIG. 4, for example) to form the candidate mine image patch 100 (FIG. 5).

Process 60 projects the candidate mine image patch onto the mine subspace (76). In one example, the candidate mine image patch 100 (FIG. 3) is projected onto the mine image subspace 96 having an 8-dimensional eigenspace components: w _(j) =u* _(j)(y−ψ), for j=1, . . . , 8

Process 60 determines if the candidate mine image patch includes a mine (82). In one example, the candidate mine image patch 100 and the mine subspace image 96 are used to determine if the received image includes a mine (FIG. 3).

Referring to FIG. 4, in one example, a mine image patch 90 includes a polygon 92 representing a mine and having vertices, for example, six vertices (a vertex 94 a, a vertex 94 b, a vertex 94 c, a vertex 94 d, a vertex 94 e and a vertex 94 f). In this example, the vertices 94 a, 94 b, 94 f form the head of the mine while the vertices 94 b-94 f form a tail of the mine. In other embodiments, a mine may be represented by any polygon having three or more vertices.

In one example, the set of known mines is generated using side-scan sonar images of actual mines. Side-scan refers to scan configuration where the sonar sensor is along a horizontal strip on the side of the under water vehicle. In one particular example, over two hundred mine images are identified and segmented out of a set of sonar imagery. Each mine image is shape-normalized and hand-annotated with the six vertices 94 a-94 f describing a convex polygonal shape of the mine contained within the mine patch 90. The shape-normalized mine patches are used to construct the mine image subspace. One example of a mine image subspace representation is a mine image subspace 96 having mine image patches 90 a-90 i shown in FIG. 3.

Referring to FIG. 6, a process 200 is one example to generate a mine image subspace in processing block 64 (see FIG. 2). Process 200 performs shape normalization (204). For example, the side-scan sonar imagery for each known mine is centered with a uniform area, for example, a rectangle or square, which is the boundary of the mine image patch. In one example, each mine is morphed into fitting within the boundaries of a mine image patch 90 (FIG. 4). For example, an elongated mine that extends beyond the boundary of the mine image patch may be morphed to appear wider in order to fit with the boundaries of the mine image patch.

In another example, each mine is shaped as a polygon. In one example, the mine has six vertices 94 a-94 f (FIG. 4). In other examples, the mine may be described using more or less than six vertices. In further examples, a subset of the vertices may be used such as the vertices describing the tail of the mine or the vertices that describe the head of the mine.

Process 200 performs subspace identification (208). For example, a distribution is determined from a collection of known mine image patches. By determining the distribution, it is possible to determine what subspace from the entire image space mine image patches occupy. This subspace becomes the mine image subspace.

Process 200 performs subspace distance statistical analysis (212). For example, a distance threshold is determined by measuring statistics between image patches that are known to be mines and image patches that are known not to be mines to determine a distance threshold. As will be shown below, a distance between a candidate mine image patch 100 and the mine image subspace determines the likelihood that the candidate mine image patch contains a mine. For example, moving closer towards the mine image subspace from a far distance, what distance do objects identified as non-mines become identified as mines. In one example, a probability density is determined that the object is a mine and a probability distance is determined that the object is a non-mine, each probability density is a function of distance from the mine image subspace 96.

Referring to FIG. 7, a process 220 is one example of a process to determine a distance of the candidate image patch 100 to the mine image subspace 96 (224). For the candidate mine image patch 100 (FIG. 3), the vector representation, Ω=[w₁, w₂, w₃, . . . , w₈]^(T), may be used to determine the distance of the candidate mine image 100 to the mine image subspace 96.

For example, referring to FIG. 3, consider, y, representing a point in space of the candidate mine image patch 100 where y ε

^(n) and consider, y_(proj), representing a point on the image mine subspace where the candidate image is projected and where y_(proj)=Σ₁ ^(n)[y₁, u_(k)]u_(k) where u_(k)ε

^(n), u_(k) is an eigenvector and k is the index.

The candidate mine image 100 is separated from the mine subspace 96 by a distance, d. The distance, d=∥y−y_(proj)∥, provides a good measure of determining whether the candidate mine image patch 100 contains a mine or not. For example, if the distance is small then there is a higher likelihood that the candidate mine image patch 100 contains a mine. Likewise, a very large distance indicates a less likelihood that the candidate mine image patch 100 contains a mine.

Referring FIGS. 7 and 8, process 220 uses likelihood ratios (228). The probability density for a mine, π_(θ)(d), is depicted in a curve 270 and the probability density for a non-mine, π_(θ′)(d), is depicted in a curve 275, where π_(θ)(d) and π_(θ′)(d) are functions of the distance of the candidate mine image 100 from the mine subspace 96. If a likelihood ratio, π_(θ)(d)/π_(θ′)(d), is greater than or equal to 1, the candidate object is more likely to be a mine and if the likelihood ratio is less than 1 then the candidate object is more likely not a mine.

One difference between the approach described herein and the prior art is that the features, such as the shapes of polygons and image pixel content (colors) corresponding to within those polygonal regions, and model for a mine is determined directly from the known mine image data. Therefore, the selected features and the model are optimal in the sense that they best represent a given data set (e.g., a particular mine); whereas pre-fixed features and models may be optimal in a general sense but not for a particular data set (e.g., a particular mine). The approach previously described, which extends the process of modeling with the addition of shape parameterization, has the advantage of better modeling appearance variations due to changing mine geometry and thereby improving the detection/classification accuracy.

Referring to FIG. 9, as shown above determining a mine using all six vertices 94 a-94 f (FIG. 3) may not be the most optimal solution. For example, using some of the vertices may generate different results. In one experiment shown in table 282, using five vertices 94 b-94 f that make-up the tail of a mine yielded a correct positive of 91.3%, a false positive of 3.4%, a false negative of 8.7% and a correct negative of 96.6%. In a second experiment shown in table 284, using all six vertices 94 a-94 f that make-up the mine yielded a correct positive of 88.9%, a false positive of 13.8%, a false negative of 11.1% and a correct negative of 86.2%. In a third experiment shown in table 286, using three vertices 94 a, 94 b, 94 f that make-up the head of the mine yielded a correct positive of 88.1%, a false positive of 24.1%, a false negative of 11.9% and a correct negative of 75.9%. In a fourth experiment shown in table 288, using three vertices 94 c-94 e that make-up a portion of the tail of the mine yielded a correct positive of 92.5%, a false positive of 17.2%, a false negative of 7.5% and a correct negative of 82.8%.

In other embodiments, it is possible to reduce the number of false alarms (e.g., the number of false positives). For example, a method that extracts discriminative subspaces that describe two distinct classes (e.g., a mine image patch class and a non-mine image patch class (extracted from false alarms)) and uses higher order statistical information contained in the image patches for each class to determine whether a candidate mine image patch is a true mine or a false alarm (non-mine).

Referring to FIG. 10, one example of a process to identify whether a candidate mine image patch is a mine or not a mine is a process 300. A probability model is determined for a mine class and a probability model is determined for a non-mine class (304). The mine and non-mine probability models are determined using mine and mine subspaces that are disjoint as will be explained further. For example, the probability models are conditional probabilities: Pr(x|mine) and Pr(y|non-mine) where Pr(x|mine) is the conditional probability that a feature is a mine given it is from a mine class and Pr(y|non-mine) is the conditional probability that a non-mine feature is a non-mine given that it is from a non-mine class. x and y are random variables representing instances of mine data, for example, mine image patches from side-scan sonar image]

A sonar image of a candidate object is received (308) and shape normalized (312) to form a candidate mine image patch. In one example, processing blocks 308 and 312 are similar as processing blocks 68 and 72 in FIG. 2. The candidate mine image patch is projected onto the disjoint mine and non-mine subspaces (316). In one particular example, the projections of the candidate mine image patch are used to generate two 16 dimensional vectors that are combined to form one 32 dimensional candidate vector, V_(candidate).

Using the probability models for the mine and non-mine subspaces, an object is determined to be either a mine or a non-mine based on the projection (322). For example, a Bayesian decision function is used to determine whether a candidate mine image patch is a true mine or a false alarm. In one particular example, the Bayesian decision function is logarithmic likelihood Of V_(candidate) corresponding to a mine and is represented as: Log Lik(V _(candidate))=Log((Pr(V _(candidate)|mine)/Pr(V _(candidate)|Non-mine)) where Pr(V_(candidate)|mine) is the probability that a candidate mine image patch includes a mine feature given that it belongs to a mine class and Pr(V_(candidate)|Non-mine) is the probability that a candidate mine image patch includes a mine feature given that it belongs to a non-mine class. If LogLik (V_(candidate)) is positive then the candidate image patch is likely to be a mine and if LogLik (V_(candidate)) is negative then the candidate image patch is likely to be a non-mine.

Referring to FIG. 11, an example of a process to determine the probability models for a mine and a non-mine is a process 400. Process 400 is based on using previously known data as a basis for determining whether a candidate object is a mine or a non-mine. For each class (e.g., mine and non-mine), image patches are obtained (404). For example, a first set of image patches are obtained using known mines and a second set of image patches are obtained from image patches that are known false positives of a mine (false alarms). The first and second sets form a benchmark data set. In one particular example, image patches from true mine and false alarm image patches are extracted from full side-scan sonar images and each image patch is extracted by manually selecting the center of the highlight region inside a larger pre-determined image box. Then, a 40 by 40 pixel rectangular image region representing the centered mine contact is cropped out.

Principal component analysis (PCA) is used extract discriminate subspaces from each of the two classes (408). For example, each image subspace (mine or non-mine) may be represented using twenty-dimensional vectors (components), for example. Each subspace may be formed similar to mine subspace 96.

Similar components between each of the mine subspace and the non-mine subspace are determined (412) and removed to form disjoint subspaces (418). Disjoint subspaces are obtained by removing, from each subspace, components with similar counterparts in the opposite class thereby leaving behind subspaces with components that are descriptive of their own class, while at the same time being distinctly non-descriptive of the opposite class. For example, consider an analogy of a face detector that detects glasses on a person. One class is a group of people with glasses and another class is of people with no glasses (previously detected false positives). Therefore, components of a person's face above the eyebrows or below the nose would be eliminated because none of those components would be descriptive of either class.

In one example, similar components are removed if the mutual information between the subspace classes are greater than a threshold. For example, if x_(i) represents components in the mine subspace and y_(k) represents a components in the non-mine subspace and I( ) is the mutual information function, then I(x_(i);y_(k))>threshold where,

${I\left( {X,Y} \right)} = {\sum\limits_{y \in Y}{\sum\limits_{x \in X}{{p\left( {x,y} \right)}\log\frac{p\left( {x,y} \right)}{{p(x)}{p(y)}}}}}$ and p(x) is a probability density of the mine subspace, p(y) is the probability density of the non-mine subspace and p(x, y) is probability density of x and y jointly (i.e., a joint probability distribution for any two random variables x and y).

Mutual information takes into account the actual probability distributions of the underlying signal and does not assume a Gaussian distribution, and is, therefore, able to capture higher order statistical information content beyond second order mean and variances. Mutual information is also invariant to a range of image transformations and therefore more conducive to capturing subtle structure that might exist in geometrically incoherent images.

Each mine image patch is projected on to the disjoint mine subspace and the disjoint mine subspace (422). For example, the projections are performed similar to FIG. 3. In one particular example, a projection on the disjoint mine subspace forms a sixteen dimensional vector and a projection on the disjoint non-mine subspace forms a sixteen dimensional vector. A probability model is generated for the mine subclass (428). For example, the two sixteen dimensional vectors are combined to form a thirty-two dimensional probability distribution for a mine class. From the thirty-two dimensional probability distribution for a mine class, the conditional probability, Pr(x|Mine), is determined from: Pr(x)=(2π)^(−d/2)|Σ|^(−1/2)exp(−½(x−μ)^(T)Σ⁻¹(x−μ)) where

xε

³² is a stochaistic (feature vector of a mine)

and where Σ is a covariance matrix of data x, μ is a mean of data x, d is [dimensions of vector x and T is a transpose operator. In one example, Pr(x) is derived from Pr(x|mine) by integrating over the variable “mine.” In another example, Pr(x) is derived from Pr(x|mine) collecting data about x for cases where the condition or hypothesis “mine” is known to be true.

Each non-mine image patch is projected on to the disjoint mine subspace and the disjoint mine subspace (432). For example, the projections form two sixteen dimensional vectors. A probability model is generated for the non-mine subclass (438). For example, the two sixteen dimensional vectors are combined to form a thirty-two dimensional probability distribution for a non-mine class. From the 32-dimensional probability distribution for a non-mine class, the conditional probability, Pr(y|non-mine), is determined from: Pr(y)=(2π)^(−d/2)|Σ|^(−1/2)exp(−½(y−μ)^(T)Σ⁻¹(y−μ)) where

y ε

³² is a stochastic (feature vector of non-mine).

With the two conditional probability models for each class, Pr(x|Mine) and Pr(y|Non-mine), determined, the likelihood ratios for a candidate mine image may be also determined in order to form a decision theoretic measure of whether a feature representation of a candidate image patch is likely to have come from a true mine contact or a false-alarm.

Using the process 300 in mine detection, experimental results indicate a significant reduction in false alarms. For example, a benchmarking data set was taken from 69 true mine contacts, where 65 were correctly identified as mines while 4 were incorrectly identified as non-mines, and the benchmarking data set was taken from 80 non-mine contacts identified as false alarms where 77 were identified as false alarms and 3 were incorrectly identified a mines. 81 image patches that were previously identified as false alarms received (and not the same false alarm image patches in the benchmarking data set) were used as candidate image patches in process 300. In the results, 56 of the 81 image patches (69.1%) were correctly identified as non-mines.

FIG. 12 shows an example of the IPS 12 (FIG. 1). The IPS 12 includes a processor 622, a volatile memory 624, a non-volatile memory 626 (e.g., hard disk) and a network transceiver 625 to communicate with sensor system 14 through the network 16. Non-volatile memory 626 includes computer instructions 632, an operating system 636 and mine data 638. The computer instructions 632 included mine identifying instructions 634 which are executed out of volatile memory 624 to perform the processes (e.g., a process 60 and a process 300). In one example, the mine data 638 includes the mine image subspace 96. In another example, the mine data 638 includes mine images recorded from verified mines and images of non-mines previously found to be false positives of mines.

The processes described herein (e.g., process 60 and process 300) are not limited to use with the hardware and software of FIG. 10; each process may find applicability in any computing or processing environment and with any type of machine or set of machines that is capable of running a computer program. The processes may be implemented in hardware, software, or a combination of the two. The processes may be implemented in computer programs executed on programmable computers/machines that each includes a processor, a storage medium or other article of manufacture that is readable by the processor (including volatile and non-volatile memory and/or storage elements), at least one input device, and one or more output devices. Program code may be applied to data entered using an input device to perform the processes and to generate output information.

The system may be implemented, at least in part, via a computer program product, (i.e., a computer program tangibly embodied in an information carrier (e.g., in a machine-readable storage device)), for execution by, or to control the operation of, data processing apparatus (e.g., a programmable processor, a computer, or multiple computers)). Each such program may be implemented in a high level procedural or object-oriented programming language to communicate with a computer system. However, the programs may be implemented in assembly or machine language. The language may be a compiled or an interpreted language and it may be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program may be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network. A computer program may be stored on a storage medium or device (e.g., CD-ROM, hard disk, or magnetic diskette) that is readable by a general or special purpose programmable computer for configuring and operating the computer when the storage medium or device is read by the computer to perform a process (e.g., a process 60 and a process 300). The processes may also be implemented as a machine-readable storage medium, configured with a computer program, where upon execution, instructions in the computer program cause the computer to operate in accordance with the respective process.

The processes described herein are not limited to the specific embodiments described herein. For example, the processes are not limited to the specific processing order of FIGS. 2, 6, 7, 10 and 11, respectively. Rather, any of the processing blocks of FIGS. 2, 6, 7, 10 and 11 may be re-ordered, combined or removed, performed in parallel or in serial, as necessary, to achieve the results set forth above.

Even though FIG. 3 is shown in three dimensions, FIG. 5 is only a representation of a projection onto a mine image subspace with dimensions greater than 3. One skilled in the art would recognize that showing the actual representation is impossible.

Elements of different embodiments described herein may be combined to form other embodiments not specifically set forth above. Other embodiments not specifically described herein are also within the scope of the following claims. 

What is claimed is:
 1. A method to reduce false alarms in identifying whether a candidate image is from an object class comprising: generating an object class subspace using principal component analysis on images of objects from the object class; generating a non-object class subspace using principal component analysis on images determined to be false positives of objects from the object class; projecting the candidate image onto the object class subspace; projecting the candidate image onto the non-object class subspace; removing similar principal components from each subspace so that each subspace is disjoint from each other before projecting the candidate image onto the object class subspace and projecting the candidate image onto the non-object class subspace; and determining whether the candidate image is from the object class using a Bayesian decision function based on the projecting of the candidate image onto the object class subspace and the projecting of the candidate image onto the non-object class subspace.
 2. The method of claim 1, further comprising: receiving the candidate image; and performing shape normalization on the received candidate image.
 3. The method of claim 1 wherein determining whether the candidate image is from the object class using a Bayesian decision function based on the projections on the object class subspace and the non-object class subspace comprises determining whether the candidate image is a mine.
 4. A method to reduce false alarms in identifying whether a candidate mine image is from a mine class comprising: generating a mine subspace using principal component analysis on images of mines; generating a non-mine subspace using principal component analysis on images determined to be false positives of mines; projecting the candidate mine image onto the mine subspace; projecting the candidate mine image onto the non-mine subspace; removing similar principal components from each of the mine class subspace and the non-mine class subspace so that each subspace is disjoint from each other before projecting the candidate image onto the mine subspace and projecting the candidate image onto the non-mine subspace; and determining whether the candidate mine image represents a mine using a Bayesian decision function based on the projecting of the candidate image onto the mine subspace and the projecting of the candidate image onto the non-mine subspace.
 5. The method of claim 4 wherein generating the mine subspace using principal component analysis comprises generating the mine subspace based on twenty principal components, and wherein generating the non-mine subspace using principal component analysis comprises generating the mine subspace based on twenty principal components.
 6. The method of claim 5 wherein removing similar principal components from each of the mine class subspace and the non-mine class subspace comprises reducing the twenty principal components representing each subspace by four principal components each.
 7. The method of claim 5 wherein a probability of x being a mine given the mine is from a mine class is determined from: Pr(x)=(2π)^(−d/2)|Σ|^(−1/2)exp(−1/2(x−μ)^(T)Σ⁻¹(x−μ)) where xε

² is a stochastic feature vector of a mine, Σ is a covariance matrix of data x, μ is a mean of data x, d is dimensions of vector x, and T is a transpose operator.
 8. An article comprising a non-transitory machine-readable medium that stores executable instructions to reduce false alarms in identifying whether a candidate mine image is from a mine class, the instructions causing a machine to: generate a mine subspace using principal component analysis on images of mines; generate a non-mine subspace using principal component analysis on images determined to be false positives of mines; project the candidate mine image onto the mine subspace; project the candidate mine image onto the non-mine subspace; remove similar principal components from each of the mine class subspace and the non-mine class subspace so that each subspace is disjoint from each other before projecting the candidate image onto the mine subspace and projecting the candidate image onto the non-mine subspace; and determine whether the candidate mine image represents a mine using a Bayesian decision function based on projecting of the candidate image onto the mine subspace and projecting of the candidate image onto the non-mine subspace.
 9. The article of claim 8 wherein the instructions causing a machine to generate the mine subspace using principal component analysis comprise instructions causing a machine to generate the mine subspace based on twenty principal components, and Wherein the instructions causing a machine to generate the non-mine subspace using principal component analysis comprise instructions causing a machine to generate the mine subspace based on twenty principal components.
 10. The article of claim 9 wherein the instructions causing a machine to remove similar principal components from each of the mine class subspace and the non-mine class subspace comprise instructions causing a machine to reduce the twenty principal components representing each subspace by four principal components each.
 11. The article of claim 10 wherein a probability of x being a mine given the mine is from a mine class is determined from: Pr(x)=(2π)^(−d/2)|Σ|^(−1/2)exp(−1/2(x−μ)^(T)Σ⁻¹(x−μ)) where xε

³² is a stochastic feature vector of a mine, Σ is a covariance matrix of data x, μ is a mean of data x, d is dimensions of vector x, and T is a transpose operator.
 12. An apparatus to reduce false alarms in identifying whether a candidate mine image is from a mine class, comprising: circuitry to: generate a mine subspace using principal component analysis on images of mines; generate a non-mine subspace using principal component analysis on images determined to be false positives of mines; project the candidate mine image onto the mine subspace; project the candidate mine image onto the non-mine subspace; determine whether the candidate mine image represents a mine using a Bayesian decision function based on projecting of the candidate image onto the mine subspace and projecting of the candidate image onto the non-mine subspace space; and remove similar principal components from the mine subspace and the non-mine subspace so that each subspace is disjoint from each other before projecting the candidate image onto the mine subspace and projecting the candidate image onto the non-mine subspace.
 13. The apparatus of claim 12 wherein the circuitry comprises at least one of a processor, a memory, programmable logic and logic gates.
 14. The apparatus of claim 12 wherein circuitry to generate the mine subspace using principal component analysis comprises circuitry to generate the mine subspace based on twenty principal components, and wherein circuitry to generate the non-mine subspace using principal component analysis comprises circuitry to generate the mine subspace based on twenty principal components.
 15. The apparatus of claim 14 wherein circuitry to remove similar principal components from the mine subspace and the non-mine subspace comprises circuitry to reduce the twenty principal components representing each subspace by four principal components each.
 16. The apparatus of claim 15 wherein a probability of x being a mine given it is from a mine class is determined from: Pr(x)=(2π)^(−d/2)|Σ|^(−1/2)exp(−1/2(x−μ)^(T)Σ⁻¹(x−μ)) where xε

³² is a stochastic feature vector of a mine, Σ is a covariance matrix of data x, μ is a mean of data x, d is dimensions of vector x, and T is a transpose operator.
 17. A method to reduce false alarms in identifying whether a candidate mine image is from a mine class comprising: generating a mine subspace using principal component analysis on images of mines; generating a non-mine subspace using principal component analysis on images determined to be false positives of mines; projecting the candidate mine image onto the mine subspace; projecting the candidate mine image onto the non-mine subspace; determining whether the candidate mine image represents a mine using a Bayesian decision function based on projecting of the candidate image onto the mine class subspace and projecting of the candidate image onto the non-mine subspace; and removing similar principal components from the mine subspace and the non-mine class subspace so that each subspace is disjoint from each other before projecting the candidate image onto the mine subspace and projecting the candidate image onto the non-mine subspace.
 18. The method of claim 17 wherein generating the mine subspace using principal component analysis comprises generating the mine subspace based on twenty principal components, and wherein generating the non-mine subspace using principal component analysis comprises generating the mine subspace based on twenty principal components.
 19. The method of claim 18 wherein removing similar components from the mine subspace and the non-mine class subspace comprises reducing the twenty principal components representing each subspace by four principal components each. 